home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-02 / prodpack.zip / DB4PPSRC.EXE / ED.PRG < prev    next >
Text File  |  1993-05-12  |  2KB  |  87 lines

  1. *' $Header: $
  2. FUNCTION Ed         && Call Modify Command in a Window 
  3. PARAMETER pc_file
  4. *-----------------------------------------------------------------------------
  5. *-- Notes......: Call Modify Command in a window 
  6. *-----------------------------------------------------------------------------
  7.   IF SET("TALK") = "ON"
  8.     SET TALK OFF
  9.     ll_talk = .T.
  10.   ELSE
  11.     ll_talk = .F.
  12.   ENDIF
  13.  
  14.   IF TYPE( "pc_file" ) <> "C"
  15.     pc_file = ""
  16.   ENDIF
  17.  
  18.   IF AT( ".", pc_file ) = 0
  19.     lc_fullfile = pc_file + ".prg"
  20.   ELSE
  21.     lc_fullfile = pc_file
  22.   ENDIF
  23.  
  24.   IF .NOT. FILE( lc_fullfile ) .AND. UPPER( RIGHT( lc_fullfile, 4 ) ) = ".PRG" ;
  25.      .AND. .NOT. ISBLANK( pc_file )
  26.     lh = 0
  27.     lh = FCREATE( lc_fullfile, "rw" )
  28.     IF lh > 0
  29.       c = FPUTS( lh, 'FUNCTION ' + pc_file )
  30.       c = FPUTS( lh, 'PARAMETER p__val' )
  31.       c = FPUTS( lh, 'RETURN( .t. )')
  32.       c = FPUTS( lh, '*-- EOF: ' + pc_file + '()' )
  33.       IF FCLOSE( lh )
  34.       ENDIF
  35.     ENDIF
  36.   ENDIF
  37.   SAVE SCREEN TO ed
  38.   SET STATUS OFF
  39.   RESTORE SCREEN FROM ed
  40.   SET CONSOLE OFF
  41.   IF .NOT. ISBLANK( WINDOW() )
  42.     KEYBOARD [ ]
  43.   ENDIF
  44.  
  45.   cDBEdit = HOME() + "DBEdit" 
  46.   IF ISBLANK( pc_file )
  47.     IF FILE( "C:\BRIEF\B.EXE" )
  48.       !b
  49.     ELSE
  50.       ! &cDBEDIT 5 5 20 75
  51.     ENDIF
  52.   ELSE
  53.     IF FSIZE( lc_fullfile ) > 64000
  54.       IF FILE( "C:\BRIEF\B.EXE" )
  55.         !b &lc_fullfile
  56.       ELSE
  57.         DO _Err_Box WITH ;
  58.           [Sorry, dBEDIT cannot handle files larger than 64000 bytes.]
  59.       ENDIF
  60.     ELSE
  61.       ! &cDBEDIT &lc_fullfile 5 5 20 75
  62.     ENDIF
  63.   ENDIF
  64.   SET CONSOLE ON
  65.   SET STATUS ON
  66.   RESTORE SCREEN FROM ed
  67.   RELEASE SCREEN ed
  68.  
  69.   IF UPPER( RIGHT( lc_fullfile, 4 ) ) = ".PRG" .AND. AT( ".", pc_file ) = 0 ;
  70.      .AND. .NOT. ISBLANK( pc_file )
  71.     KEYBOARD CHR(13) + "{BackSpace}{BackSpace}"
  72.     KEYBOARD '("")'
  73.     KEYBOARD "{Home}{Del}{Del}{Del}{Del}"
  74.     KEYBOARD "{End}{LeftArrow}{LeftArrow}"
  75.   ENDIF
  76.  
  77.   IF ll_talk
  78.     SET TALK ON
  79.   ENDIF
  80.  
  81. RETURN .T.   
  82. *-- EOF: Ed( pc_file )
  83. *'----------------------------------------------------------------------------
  84. *' $Log: $
  85. *'----------------------------------------------------------------------------
  86.  
  87.